package ar.uba.fi.algo3.algoflight.model.trayectorias;

import java.util.List;

import ar.uba.fi.algo3.algoflight.model.Direccion;
import ar.uba.fi.algo3.algoflight.model.Posicion;

public abstract class Trayectoria {
	protected List<Posicion> listaDePosiciones;
	protected Direccion direccion;

	public Trayectoria(List<Posicion> listaDePosiciones) {
		this.listaDePosiciones = listaDePosiciones;
	}

	public List<Posicion> getListaDePosiciones() {
		return listaDePosiciones;
	}

	public abstract Posicion obtenerSiguientePosicion(float velocidad);

	public Posicion obtenerPosicionActual() {
		return listaDePosiciones.get(0);
	}

	public void cambiarDireccion(Direccion nuevaDireccion) {
		this.direccion = nuevaDireccion;
	}

	public Direccion getDireccion() {
		return this.direccion;
	}

	public abstract void avanzar(float velocidad);
}
